ItemFileData

Extension: ".itdata"

ItemFileData defines an item file the game uses to build ItemData.

After the end definition line, the tooltip is defined. For this reason only one ItemFileData can be defined per file.

Common Definitions

"e" for End

Defines the end of a FileData.
If not defined: No FileData is defined.

"i" for Identifier "Type > String"

Defines an identifier used for identification of FileData and overriding of some FileData. Identifiers are converted to all lower case during load.
If not defined: Set to name.

"n" for Name "Type > String"

Defines a name used in some FileData.
If not defined: Set to identifier.

"p" for Priority "Type > Integer"

Defines a priority that is used for overriding FileData. Higher priority overrides lower priority.
If not defined: Is set to 0.

"v" for Value "Type > String=(Any Type)"

Defines a value for this file.
If not defined: No Value is set.

"x" for NSFW "Type > Separated Array of Type > String"

Defines the FileData as NSFW, and sets the NSFW categories.
If not defined: FileData is treated as SFW.

"#" for File Tag "Type > Separated Array of Type > String"

Defines file tags that can be used to later in lua scripts.

"@" for Insert Value

Defines a value that is inserted into a given data map.
Example: @=extra=can_take_photo=1

"~" for Skip

Defines this line as being skipped.

Image Definitions
Image Definitions

"t" for Tag "Type > String=Type > String"

Defines tags for use in image search and image generation. The second letter of the definition defines the tag type: suggested (t=, ts=), required (tr=) or avoid (ta=). Used in Image Search.
A required tag "type=x" is usually added to FileData automatically. "x" in this case is the FileData type, for example: "type=character", "type=interaction". This can be manually overridden by adding a "type=x" tag in the file.
If not defined: The only tag is "type=x". Image Search will result in a mostly random images.
Example: "tr=type=character"

"g" for Groups "Type > String"

Defines a group for this item. This is shown on the item tooltip.
If not defined: No group is shown on the tooltip.
Example: "g=clothing"

"a" for Action "Type > ItemAction"

Defines an action that can be used in specific situations.
Currently used:
"onequip" triggers on equipping the item.
"onunequip" triggers on unequipping the item.
"onuse" triggers when the item is used. If this is not defined the item can't be used.
Example: "a=onUse/addPlayerData("budgetcurrent", "thirst", 10)

"m" for Modification "Type > ItemModification"

Defines modifications that are applied to the character wearing this item.
Currently used:
"attribute" adds an amount to the given attribute.
"skill" adds an amount to the given skill.
"budgetmax" adds an amount to the given budget max.
"budgetcurrent" adds an amount to the given budget current.
If not defined: No modifications are applied to the wearer.
Example: "a=attribute/charisma/5"

"o" for Outfit "Type > OutfitData"

Defines an outfit the character will visually wear when wearing this item.
If not defined: The characters appearance is not altered by this item.
Example: "o=outfit/swimsuit"

"s" for Slots "Type > String"

Defines slots the item assigned to when worn. Only one item can be assigned to any given slot and when an item is equipped into an already assigned slot the old item is unequipped automatically. Almost any string can be a slot, but to prevent missing compatibility most of the time one of the predefined slots should be used.
Predefined slots:
"legs", "chest", "head", "feet"
If not defined: The item can't be equipped.
Example: s=chest|legs

"c" for Color "Type > HexColor"

Defines the tint of the item when displayed in an inventory.
If not defined: The item will be white "ffffff".
Example: "c=ff0000ff"

"$" for Value "Type > Integer"

Defines the value of the item.
If not defined: The value is set to a default value.
Example: "$=50"

"l" for Label "Type > String"

Defines a label for the item, this is used to identify files.
If not defined: This item has no labels.
Example: "l=electronic"